package com.woniuxy.yoga.product.model.form;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 新增团队产品的参数对象
 */
@ApiModel("新增团队产品的参数对象")
@Data
public class AddTeamProductForm {

    /**
     * 团课产品名
     */
    @NotNull(message = "团课产品名不能为空")
    @ApiModelProperty("团课产品名")
    private String teamProductName;

    /**
     * 团课产品封面
     */
    @NotNull(message = "团课产品封面不能为空")
    @ApiModelProperty("团课产品封面")
    private String teamProductImage;

    /**
     * 教练ID
     */
    @NotNull(message = "教练ID不能为空")
    @ApiModelProperty("教练ID")
    private Integer coachId;

    /**
     * 最大人数
     */
    @Min(value = 1,message = "最大人数不能为负数")
    @ApiModelProperty("最大人数")
    private Integer teamMax;

    /**
     * 开课时间
     */
    @NotNull(message = "开课时间不能为空")
    @ApiModelProperty("开课时间")
    private String openTime;

    /**
     * 开课人数
     */
    @Min(value = 1,message = "开课人数不能为负数")
    @ApiModelProperty("开课人数")
    private Integer openNum;

    /**
     * 课程总课时
     */
    @Min(value = 1,message = "课程总课时不能为负数")
    @ApiModelProperty("课程总课时")
    private Integer hourCount;

    /**
     * 课程描述
     */
    @NotNull(message = "课程描述不能为空")
    @ApiModelProperty("课程描述")
    private String teamProductRemarks;

    /**
     * 团队产品价格
     */
    @DecimalMin(value = "1",message = "团队产品价格不能为负数")
    @ApiModelProperty("团队产品价格")
    private BigDecimal teamProductPrice;

    /**
     * 教室ID
     */
    @NotNull(message = "教室ID不能为空")
    @ApiModelProperty("教室ID")
    private Integer classroomId;
}
